package cn.lele.reggie.controller;

import cn.lele.reggie.service.OrderService;
import cn.lele.reggie.vo.TurnoverReportVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import java.time.LocalDate;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import static net.sf.jsqlparser.parser.feature.Feature.values;

@Controller
@RequestMapping("/echart")
public class EchartController {
    @Autowired
    OrderService orderService;

//    @GetMapping("/chart")
//    public String chartPage(Integer v, Model model) {
//        System.out.println("vvvvvvvvvvvvvvvvvvv==>"+v);
//        //v=1:今天，2：昨天，3，近7天，4：近一个月
//        LocalDate begin=null;
//        LocalDate end=null;
//        if(v==1){
//            begin=LocalDate.now();
//        }else if(v==2){
//            begin=LocalDate.now().plusDays(-1);
//        }else if(v==3){
//            begin=LocalDate.now().plusDays(-7);
//        }else {
//            begin=LocalDate.now().plusDays(-30);
//        }
//        end=LocalDate.now();
//        //准备数据
//        TurnoverReportVO turnoverReportVO = orderService.prepareData(begin, end);
//        String dateList = turnoverReportVO.getDateList();
//        String turnoverList = turnoverReportVO.getTurnoverList();
//        //日期数据
//        String[] dataTimes = dateList.split(",");
//        //销售金额总数数据
//        String[] values = turnoverList.split(",");
//
//        // 将数据封装到一个Map中，以便在Thymeleaf模板中使用
//        Map<String, Object> chartData = new HashMap<>();
//        chartData.put("dataTimes", dataTimes);
//        chartData.put("values", values);
//
//        model.addAttribute("chartData", chartData); // 将数据添加到模型中
//        return "chart"; // 返回Thymeleaf模板名称
//    }

    @GetMapping("/chart")
    public String chartPage(Integer v, Model model) {
        System.out.println("vvvvvvvvvvvvvvvvvvv==>"+v);
        //v=1:今天，2：昨天，3，近7天，4：近一个月
        LocalDate begin=null;
        LocalDate end=null;
        if(v==1){
            begin=LocalDate.now();
        }else if(v==2){
            begin=LocalDate.now().plusDays(-1);
        }else if(v==3){
            begin=LocalDate.now().plusDays(-7);
        }else {
            begin=LocalDate.now().plusDays(-30);
        }
        end=LocalDate.now();
        //准备数据
        TurnoverReportVO turnoverReportVO = orderService.prepareData(begin, end);
        List<LocalDate> dateList = turnoverReportVO.getDateList();
        List<Double> turnoverList = turnoverReportVO.getTurnoverList();

        // 将数据封装到一个Map中，以便在Thymeleaf模板中使用
        Map<String, Object> chartData = new HashMap<>();
        chartData.put("dataTimes", dateList);
        chartData.put("values", turnoverList);

        model.addAttribute("chartData", chartData); // 将数据添加到模型中
        return "chart"; // 返回Thymeleaf模板名称
    }

}
